var app = getApp(),
  common = require("../../common/common.js");

// 手机号 验证
function isPoneAvailable(str) {
  var myreg = /^[1][3,4,5,7,8][0-9]{9}$/;
  if (!myreg.test(str)) {
    return false;
  } else {
    return true;
  }
}
// 邮箱验证
var emailReg = /^([a-zA-Z]|[0-9])(\w|\-)+@[a-zA-Z0-9]+\.([a-zA-Z]{2,4})$/;

Page({

  /**
   * 页面的初始数据
   */
  data: {
    identity: ['老师', '学生'],
    identityActive: ''
  },
  identity(res) {
    console.log(res.detail.value)
    let _t = this
    _t.setData({
      identityActive: _t.data.identity[res.detail.value]
    })
  },
  // 获取注册信息
  regisForm(e) {
    let _t = this
    console.log(e.detail.value)
    let subDetail = e.detail.value
    let tel = subDetail.tel
    let code = subDetail.code
    let email = subDetail.email
    let id = subDetail.id
    let pw = subDetail.pw
    let pwAgain = subDetail.pwAgain
    // 判断当前填写信息是否完整
    // type == 1 表示是修改密码
    if (_t.data.type == 1) {
      if (tel == '' || code == '' || pw == '') {
        wx.showToast({
          title: '信息填写不完整，请重新填写',
          icon: 'none',
          duration: 2000
        })
        return false
      } else if (tel.length != 11) {
        wx.showToast({
          title: '手机号填写有误，请重新填写',
          icon: 'none',
          duration: 2000
        })
        return false
      } else if (pw != pwAgain){
        wx.showToast({
          title: '两次密码填写不一致',
          icon: 'none',
          duration: 2000
        })
        return false
      }
    } else {
      if (tel == '' || code == '' || email == '' || id == '' || pw == '' || tel == '') {
        wx.showToast({
          title: '信息填写不完整，请重新填写',
          icon: 'none',
          duration: 2000
        })
        return false
      } else if (id == '') {
        wx.showToast({
          title: '请选择您的身份',
          icon: 'none',
          duration: 2000
        })
        return false
      } else if (tel.length != 11) {
        wx.showToast({
          title: '手机号填写有误，请重新填写',
          icon: 'none',
          duration: 2000
        })
        return false
      } else if (emailReg.test(email) == false) {
        wx.showToast({
          title: '邮箱填写有误，请重新填写',
          icon: 'none',
          duration: 2000
        })
        return false
      }
    }
    // 判断用户选择身份
    id == '学生' ? (id = 1) : (id = 2)
    // 判断当前的状态是 注册 还是 修改密码
    if (_t.data.type == 1) {
      _t.changePassword(tel,pw,_t)
    } else {
      // 调用注册接口
      _t.newLogin(id, tel, pw, email, _t)
    }
  },
  // 获取手机号
  getTheTelnum: function(e) {
    let _t = this
    _t.setData({
      telnumber: e.detail.value
    })
  },
  // 获取验证码
  getYzCode() {
    let _t = this
    let telnumber = _t.data.telnumber
    // 校验手机号是否正确
    if (isPoneAvailable(telnumber)) {
      wx.showToast({
        title: '发送成功',
        icon: 'none',
        duration: 1500
      })

    } else {
      wx.showToast({
        title: '手机号填写有误',
        icon: 'none',
        duration: 1500
      })
      return false
    }
  },
  // 注册接口
  newLogin(identity, tel, password, email, _t) {
    app.util.request({
      url: 'entry/wxapp/newLogin',
      data: {
        identity: identity,
        tel: tel,
        password: password,
        email: email,
      },
      success: function(a) {
        console.log(a)
        // 信息填写成功
        wx.showModal({
          title: '提示',
          content: a.data.message,
          success: function(res) {
            if (res.confirm) {
              wx.redirectTo({
                url: '/xc_train/pages/theLogin/login/login'
              })
            }
          }
        })
      }
    })
  },
  // 修改密码接口
  changePassword(tel, pwd, email, _t) {
    app.util.request({
      url: 'entry/wxapp/changePassword',
      data: {
        pwd: pwd,
        tel: tel,
      },
      success: function (a) {
        console.log(a)
        // 信息填写成功
        wx.showModal({
          title: '提示',
          content: a.data.message,
          success: function (res) {
          }
        })
      }
    })
  },
  onLoad: function(w) {
    // 判断是过来改密码的还是新注册的
    let _t = this
    _t.setData({
      type: w.type
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {

  }
})